package com.biz.primus.ms.customercenter.feign.member;

import com.biz.primus.base.vo.PageResult;
import com.biz.primus.base.vo.commodity.ProductListItemVo;
import com.biz.primus.commodity.vo.frontend.RecommendProductReqVo;
import com.biz.primus.search.vo.search.SearchProductRequestVo;
import org.springframework.cloud.netflix.feign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;

import java.util.List;

/**
 * @author jun.liu
 * @since 2017年11月3日
 * @usage
 * @reviewer
 */
@FeignClient(qualifier = "productFrontendFeignClient", name = "service-commodity")//, fallback = DegradedMemberFeignClient.class)
public interface ProductFrontendFeignClient
{

    @PostMapping("soa/frontendProductService/recommendProducts")
    List<ProductListItemVo> recommendProducts(@RequestBody RecommendProductReqVo reqVo);

    @PostMapping("soa/frontendProductService/searchProduct")
    PageResult<ProductListItemVo> searchProduct(@RequestBody SearchProductRequestVo reqVo);
}
